import { _decorator, Component, log, Node, ProgressBar, tween, v3 } from 'cc';
import { losChannel } from '../app/Script/SDK/losChannel';
import loskc from '../app/Script/SDK/loskc';
import { _ui } from '../main/script/Main';
import { StaminaSystem } from '../app/Script/StaminaSystem/StaminaSystem';
const { ccclass, property } = _decorator;


@ccclass('LosKuangDian')
export default class losKuangDian extends Component {
    @property({ type: Node, tooltip: "nextShow" })
    nextShow = null;
    @property({ type: Node, tooltip: "bt_next" })
    bt_next = null;
    @property({ type: Node, tooltip: "狂点" })
    bt1 = null;
    @property({ type: Node, tooltip: "狂点" })
    tip = null;
    //    // @property({ type: cc.Node, tooltip: "关闭" })
    //    // bt_close = null
    @property({ type: Node, tooltip: "box" })
    box: Node = null;
    @property({ type: ProgressBar, tooltip: "progress" })
    progressBar = null;
    @property(Node)
    down: Node | null = null;
    isDone = false;
    isIconShow = false;
    // adMode: number = 0;

    private _isOnCloseShowInter = false;
    public setShowInter(isEnabled: boolean) {
        this._isOnCloseShowInter = isEnabled;
    }
    start() {
        this.progressBar.progress = 0.5;
        switch (losChannel.instance().channel) {
            case 'hw':
            case 'ks2':
            case 'ks3':
            case 'honor':
                this.progressBar.progress = 0;
                break;
            default:
                break;
        }
        // this.bt_close.active = false;
        this.bt1.active = true;
        this.tip.active = true;
        this.isIconShow = false;
        this.bt1.on(Node.EventType.TOUCH_END, () => {
            if (!this.isDone) {
                this.progressBar.progress += 0.1;
                return;
            }
        }, this);
        this.nextShow.active = false;
        tween(this.box).repeatForever(tween(this.box).to(0.3, { scale: v3(1.2, 1.2, 1.2) }).to(0.3, { scale: v3(1, 1, 1) })).start();
        this.bt_next.active = false;
        losChannel.instance().loadMultiInter()
    }
    showNext() {

        // prv.showVideo(()=>{
        //     this.hide();
        // });

        //插屏
        // prv.showInter();
        losChannel.instance().doAction(6, ['vivo', 'vivo1', 'oppo', 'oppo1', 'xiaomi'], (enabled: boolean, val: number) => {
            if (enabled) {
                losChannel.instance().showVideo({
                    sucCall: () => {
                    },
                    failCall: () => {
                    },
                    endCall: () => {
                        this.progressBar.progress = 1;

                        this.hide();
                    }
                })
            }
        })
        losChannel.instance().doAction(6, ['hw', 'ks2', 'ks3', 'honor'], (enabled: boolean, val: number) => {
            losChannel.instance().showVideo({
                sucCall: () => {

                },
                failCall: () => {

                },
                endCall: () => {


                }
            })
        })
        //OV策略
        // losChannel.instance().doAction(11, enabled => {
        //     if (enabled) {
        //         let style = {
        //             top: losChannel.instance().getSysInfo().windowHeight / 2 + 150
        //         };
        //         losChannel.instance().showCustomAd(false, false, style)
        //     }
        // })
    }
    update() {
        if (this.isDone || this.progressBar.progress <= 0) {
            return;
        }
        if (this.progressBar.progress >= 0.51 && !this.isIconShow) {
            this.isIconShow = true;
            this.showNext();
        } else if (this.progressBar.progress >= 1) {
            this.isDone = true;
            // this.bt1Txt.string = '关  闭';
            //this.box.pauseAllActions();

            // this.bt_close.active = true;
            this.bt1.active = false;
            this.tip.active = false;
            this.hide();
            return;
        }
        this.progressBar.progress -= 0.0015;
    }
    hide() {
        if (!this.node || !this.node.isValid) {
            return;
        }
        switch (losChannel.instance().channel) {
            case 'hw':
            case 'ks2':
            case 'ks3':
            case 'honor':
                {
                    _ui.tip('体力增加2点')
                    StaminaSystem.instance.addStamina(2);
                }
                break;
            default:
                break;
        }
        //losChannel.instance().closeBanner()
        loskc.log("关闭后是否弹出插屏：", this._isOnCloseShowInter)
        if (this._isOnCloseShowInter) {
            losChannel.instance().doAction(10, ['vivo1', 'oppo', 'oppo1', 'xiaomi'], (enabled, val) => {
                if (enabled) {
                    losChannel.instance().showMultiInter(2, { top: losChannel.instance().getSysInfo().windowHeight / 2 - 100 })
                }
            })
        }
        this.node.destroy();
    }
    // init() {
    //     this.adMode = Math.random() < 0.5 ? 1 : 2;
    //     // if(sznChannel.instance().channel != 'vivo'){
    //     //     if(this.adMode == 1){//底部banner
    //     //         this.down.getComponent(cc.Widget).bottom = 100;
    //     //         this.down.getComponent(cc.Widget).updateAlignment();
    //     //     }else{
    //     //         this.down.getComponent(cc.Widget).bottom = 300;
    //     //         this.down.getComponent(cc.Widget).updateAlignment();
    //     //     }
    //     // }
    // }
}


/**
 * 注意：已把原脚本注释，由于脚本变动过大，转换的时候可能有遗落，需要自行手动转换
 */
// import { losSaveData } from "../Script/Constant/losSaveData";
// import { losChannel } from "../Script/SDK/losChannel";
// import { losTools } from "../Script/Tools/losTools";
// 
// const { ccclass, property } = cc._decorator;
// 
// @ccclass
// export default class losKuangDian extends cc.Component {
// 
//     @property({ type: cc.Node, tooltip: "nextShow" })
//     nextShow = null;
//     @property({ type: cc.Node, tooltip: "bt_next" })
//     bt_next = null;
//     @property({ type: cc.Node, tooltip: "狂点" })
//     bt1 = null;
//     @property({ type: cc.Node, tooltip: "狂点" })
//     tip = null;
//     // @property({ type: cc.Node, tooltip: "关闭" })
//     // bt_close = null
//     @property({ type: cc.Node, tooltip: "box" })
//     box = null;
//     @property({ type: cc.ProgressBar, tooltip: "progress" })
//     progressBar = null;
//     @property(cc.Node)
//     down: cc.Node = null;
// 
//     isDone = false;
//     isIconShow = false;
//     // adMode: number = 0;
// 
// 
//     start() {
//         this.progressBar.progress = 0.5;
//         // this.bt_close.active = false;
//         this.bt1.active = true;
//         this.tip.active = true;
//         this.isIconShow = false;
//         this.bt1.on(cc.Node.EventType.TOUCH_END, () => {
//             if (!this.isDone) {
//                 this.progressBar.progress += 0.05;
//                 return;
//             }
//             this.progressBar.progress = 1;
//         }, this);
//         this.nextShow.active = false;
//         cc.tween(this.box).repeatForever(cc.tween().to(0.3, { scale: 1.2 }).to(0.3, { scale: 1 })).start();
//         this.bt_next.active = false;
// 
//     }
// 
//     showNext() {
// 
//         // prv.showVideo(()=>{
//         //     this.hide();
//         // });
// 
//         //插屏
//         // prv.showInter();
//         //快手策略
//         losChannel.instance().doAction(7, enabled => {
//             if (enabled) {
//                 losChannel.instance().showVideo({
//                     sucCall: () => {
//                         this.hide();
//                     },
//                     failCall: () => {
// 
//                     },
//                     endCall: () => {
// 
//                     }
//                 })
//             }
//         })
//         //OV策略
//         losChannel.instance().doAction(11, enabled => {
//             if (enabled) {
//                 let style = {
//                     top: losChannel.instance().getSysInfo().windowHeight / 2 + 150
//                 };
//                 losChannel.instance().showCustomAd(false, false, style)
//             }
//         })
//     }
// 
//     update() {
//         if (this.isDone || this.progressBar.progress <= 0) {
//             return;
//         }
//         if (this.progressBar.progress >= (0.55 + Math.random() * 0.25) && !this.isIconShow) {
//             this.isIconShow = true;
//             this.showNext();
//         } else if (this.progressBar.progress >= 1) {
//             this.isDone = true;
//             // this.bt1Txt.string = '关  闭';
//             this.box.pauseAllActions();
//             // this.bt_close.active = true;
//             this.bt1.active = false;
//             this.tip.active = false;
//             this.hide();
//             return;
//         }
//         this.progressBar.progress -= 0.0015;
//     }
//     hide() {
//         if (!this.node || !this.node.isValid) {
//             return;
//         }
//         losSaveData.addItem(losTools.getRandomInt(0, 2), 1)
//         //losChannel.instance().closeBanner()
//         this.node.destroy();
//     }
//     // init() {
//     //     this.adMode = Math.random() < 0.5 ? 1 : 2;
//     //     // if(sznChannel.instance().channel != 'vivo'){
//     //     //     if(this.adMode == 1){//底部banner
//     //     //         this.down.getComponent(cc.Widget).bottom = 100;
//     //     //         this.down.getComponent(cc.Widget).updateAlignment();
//     //     //     }else{
//     //     //         this.down.getComponent(cc.Widget).bottom = 300;
//     //     //         this.down.getComponent(cc.Widget).updateAlignment();
//     //     //     }
//     //     // }
//     // }
// 
// 
// 
// }
